package com.tarena.lbs.basic.web.repository.impl;


import com.tarena.lbs.basic.web.mapper.StoreChainMapper;
import com.tarena.lbs.basic.web.repository.StoreChainRepository;
import com.tarena.lbs.basic.web.service.IAreaService;
import com.tarena.lbs.pojo.basic.dos.StoreChainDO;
import com.tarena.lbs.pojo.basic.dos.StoreChainQueryDO;
import com.tarena.lbs.pojo.basic.query.StoreChainQuery;
import java.util.List;
import javax.annotation.Resource;
import org.springframework.stereotype.Repository;

@Repository
public class StoreChainRepositoryImpl implements StoreChainRepository {

    @Resource
    private StoreChainMapper storeChainMapper;

    @Resource
    private IAreaService iAreaService;

    @Override public void insert(StoreChainDO storeChainDO) {
        storeChainMapper.insertStoreChain(storeChainDO);
    }

    @Override
    public List<StoreChainQueryDO> selectList(StoreChainQuery storeChainQuery) {
        List<StoreChainQueryDO> storeChainList =  storeChainMapper.selectList(storeChainQuery);
        for(StoreChainQueryDO temp : storeChainList) {
            if (temp.getAreaId() != null) {
                temp.setStoreAddress(iAreaService.findByAreaId(Long.valueOf(temp.getAreaId())));
            }
        }
        return storeChainList;
    }

    @Override
    public int enableStatusById(Integer id) {
        int row =storeChainMapper.enableStatusById(id);
        return row;
    }

    @Override
    public int disableStatusById(Integer id) {
        int row =storeChainMapper.disableStatusById(id);
        return row;
    }
}
